Static Random Access Memories (SRAMs) are volatile memories. As such, when power to the SRAMs is cut off, the SRAMs lose data stored in their storage nodes. One way to save the data from being lost is to read the entire SRAM and copy its data in a separate mirror array formed of a non-volatile (NV) memory. This data is saved in the NV memory during power down of the SRAM, and then written back to the SRAM during power-up of the SRAM.
Having a separate NV memory to mirror the SRAM takes up area. The separate NV memory also increases power consumption because the volatile memory (i.e., SRAM) has to be read from and then re-written during power-down and power-up events. A memory architecture that uses a separate NV memory array may also require executing a microcode and sending the data through a bus between the SRAM die and the NV memory array.